// /*** 
//  * @ ****************************************** 
//  * @Editors: yangyifan yangyf@mw-robot.com
//  * @Date: 2025-03-13 17:54:36
//  * @LastEditTime: 2025-04-30 16:45:19
//  * @Description: 
//  * @ ****************************************** 
//  */
// #pragma once

// #include "config_info.h"

// class ExtrinsicCalibrator {
// public:

//     // 构造函数，需要加载内参
//     ExtrinsicCalibrator(const ExtrinsicConfig& config,
//                        const cv::Mat& camera_matrix,
//                        const cv::Mat& dist_coeffs);

//     // 处理单帧图像
//     bool processFrame(const cv::Mat& frame);

//     // 执行标定计算
//     bool calibrate(cv::Mat& rvec, cv::Mat& tvec);

//     // 标定结果验证
//     bool validateResult(const cv::Mat& rvec, 
//                        const cv::Mat& tvec) const;

// private:
//     // 棋盘格检测实现
//     bool detectChessboard(const cv::Mat& frame,
//                          std::vector<cv::Point2f>& corners) const;

//     ExtrinsicConfig config_;
//     cv::Mat camera_matrix_;
//     cv::Mat dist_coeffs_;
//     std::vector<cv::Point3f> object_points_;
//     std::vector<std::vector<cv::Point2f>> image_points_buf_;
// };
